Open, Extensible Object Models
نویسندگان
چکیده
Programming languages often hide their implementation at a level of abstraction that is inaccessible to programmers. Decisions and tradeoffs made by the language designer at this level (single vs. multiple inheritance, mixins vs. Traits, dynamic dispatch vs. static case analysis, etc.) cannot be repaired easily by the programmer when they prove inconvenient or inadequate. The artificial distinction between implementation language and end-user language can be eliminated by implementing the language using only end-user objects and messages, making the implementation accessible for arbitrary modification by programmers. We show that three object types and five methods are sufficient to bootstrap an extensible object model and messaging semantics that are described entirely in terms of those same objects and messages. Raising the implementation to the programmers’ level lets them design and control their own implementation mechanisms in which to express concise solutions and frees the original language designer from ever having to say “I’m sorry”.
منابع مشابه
UncertWeb Processing Service: Making Models Easier to Access on the Web
Models are central tools for modern scientists and decision makers, and there are many existing frameworks to support their creation, execution and composition. Many frameworks are based on proprietary interfaces, and do not lend themselves to the integration of models from diverse disciplines. Web based systems, or systems based on web services, such as Taverna and Kepler, allow composition of...
متن کاملDesigning an Extensible Distributed Language with a Meta-Level Architecture
This paper presents a methodology for designing extensible languages for distributed com puting As a sample product of this methodology which is based on a meta level or re ective technique this paper describes a variant of C called Open C in which the programmer can alter the implementation of method calls to obtain new language functionalities suitable for the programmer s applications This p...
متن کاملAn Extensible "sccnema-less" Database Framework for Managing High-throughput Semi-structured Do-cur/ients
Object-Relational database management system is an integrated hybrid cooperative approach to combine the best practices of both the relational model utilizing SQL queries and the object-oriented, semantic paradigm for supporting complex data creation. In this paper, a highly scalable, information on demand database framework, called NETMARK, is introduced. NETMARK takes advantages of the Oracle...
متن کاملThe Extensible Run-Time Infrastructure (XRTI): An Emerging Middleware Standard for Interoperable Networked Virtual Environment
The Extensible Run-Time Infrastructure, or XRTI, is an experimental implementation of proposed improvements to the High Level Architecture (HLA) [Kapolka 03]. The HLA, a middleware standard for sharing information between distributed simulation components, can act as the communications infrastructure for an enduring network of shared virtual worlds, but only if several of its shortcomings are r...
متن کاملThe Extensible Run-Time Infrastructure (XRTI): An Emerging Middleware Platform for Interoperable Networked Virtual Environments
The Extensible Run-Time Infrastructure, or XRTI, is an experimental implementation of proposed improvements to the High Level Architecture (HLA) [Kapolka 03]. The HLA, a middleware standard for sharing information between distributed simulation components, can act as the communications infrastructure for an enduring network of shared virtual worlds, but only if several of its shortcomings are r...
متن کامل